fix(orchestrator-form-widgets): show spinner immediately on ActiveText retrigger#2279
Conversation
Changed Packages
|
|
/hold |
|
Test Spinner ActiveText: Minimal workflow to validate ActiveText shows a spinner immediately when retrigger inputs change. test-spinner-active-text.sw.yaml schemas/test-spinner-active-text__main-schema.json |
|
Test Spinner ActiveDropdown Static dropdown to trigger ActiveText fetch on selection change without dropdown fetching. test-spinner-active-dropdown.sw.yaml schemas/test-spinner-active-dropdown__main-schema.json |
Co-authored-by: Cursor <cursoragent@cursor.com>
Document the new fetch:clearOnRetrigger behavior in the existing changeset for the ActiveText retrigger spinner update. Co-authored-by: Cursor <cursoragent@cursor.com>
Extract shared clear-on-retrigger behavior into a reusable hook and reuse it across ActiveTextInput, ActiveDropdown, and ActiveMultiSelect. Co-authored-by: Cursor <cursoragent@cursor.com>
Ignore stale fetch responses when retrigger values change and avoid reapplying cached data while a retriggered fetch is loading. Use layout effect for clearOnRetrigger to reduce UI flicker. Co-authored-by: Cursor <cursoragent@cursor.com>
53c8e9d to
2d96cc0
Compare
|
|
------BEFORE------- Screen.Recording.2026-02-25.at.4.09.52.PM.mov--------AFTER------ Screen.Recording.2026-02-25.at.3.47.11.PM.mov |
|
/unhold |
|
Thanks, it was tricky issue. It's good that this behavior is left to be optional, there are cases where the old flow makes sense. |
|
/cherrypick orchestrator-1.8 |
|
@lokanandaprabhu: #2279 failed to apply on top of branch "orchestrator-1.8": DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
…t retrigger (#2279) * fix: show spinner on ActiveText retrigger * fix(orchestrator-form-widgets): keep spinner until ActiveText eval completes * Merge upstream/main Co-authored-by: Cursor <cursoragent@cursor.com> * chore(changeset): mention clearOnRetrigger Document the new fetch:clearOnRetrigger behavior in the existing changeset for the ActiveText retrigger spinner update. Co-authored-by: Cursor <cursoragent@cursor.com> * refactor(orchestrator-form-widgets): dedupe clearOnRetrigger Extract shared clear-on-retrigger behavior into a reusable hook and reuse it across ActiveTextInput, ActiveDropdown, and ActiveMultiSelect. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(orchestrator-form-widgets): guard retrigger races Ignore stale fetch responses when retrigger values change and avoid reapplying cached data while a retriggered fetch is loading. Use layout effect for clearOnRetrigger to reduce UI flicker. Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com>
…t retrigger (#2279) (#2513) * fix: show spinner on ActiveText retrigger * fix(orchestrator-form-widgets): keep spinner until ActiveText eval completes * Merge upstream/main * chore(changeset): mention clearOnRetrigger Document the new fetch:clearOnRetrigger behavior in the existing changeset for the ActiveText retrigger spinner update. * refactor(orchestrator-form-widgets): dedupe clearOnRetrigger Extract shared clear-on-retrigger behavior into a reusable hook and reuse it across ActiveTextInput, ActiveDropdown, and ActiveMultiSelect. * fix(orchestrator-form-widgets): guard retrigger races Ignore stale fetch responses when retrigger values change and avoid reapplying cached data while a retriggered fetch is loading. Use layout effect for clearOnRetrigger to reduce UI flicker. --------- Co-authored-by: Lokananda Prabhu <102503482+lokanandaprabhu@users.noreply.github.com> Co-authored-by: Cursor <cursoragent@cursor.com>
…t retrigger (#2279) (#2517) * fix: show spinner on ActiveText retrigger * fix(orchestrator-form-widgets): keep spinner until ActiveText eval completes * Merge upstream/main * chore(changeset): mention clearOnRetrigger Document the new fetch:clearOnRetrigger behavior in the existing changeset for the ActiveText retrigger spinner update. * refactor(orchestrator-form-widgets): dedupe clearOnRetrigger Extract shared clear-on-retrigger behavior into a reusable hook and reuse it across ActiveTextInput, ActiveDropdown, and ActiveMultiSelect. * fix(orchestrator-form-widgets): guard retrigger races Ignore stale fetch responses when retrigger values change and avoid reapplying cached data while a retriggered fetch is loading. Use layout effect for clearOnRetrigger to reduce UI flicker. --------- Co-authored-by: Lokananda Prabhu <102503482+lokanandaprabhu@users.noreply.github.com> Co-authored-by: Cursor <cursoragent@cursor.com>
…t retrigger (#2279) * fix: show spinner on ActiveText retrigger * fix(orchestrator-form-widgets): keep spinner until ActiveText eval completes * Merge upstream/main Co-authored-by: Cursor <cursoragent@cursor.com> * chore(changeset): mention clearOnRetrigger Document the new fetch:clearOnRetrigger behavior in the existing changeset for the ActiveText retrigger spinner update. Co-authored-by: Cursor <cursoragent@cursor.com> * refactor(orchestrator-form-widgets): dedupe clearOnRetrigger Extract shared clear-on-retrigger behavior into a reusable hook and reuse it across ActiveTextInput, ActiveDropdown, and ActiveMultiSelect. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(orchestrator-form-widgets): guard retrigger races Ignore stale fetch responses when retrigger values change and avoid reapplying cached data while a retriggered fetch is loading. Use layout effect for clearOnRetrigger to reduce UI flicker. Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com>
* feat(orchestrator): add card height mode config for workflow run page (#2386) * feat(orchestrator): add card height mode config Expose a workflow instance page option to switch between fixed card heights and content-based sizing, with a new hook and changeset entry. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(orchestrator): simplify layout and warn on invalid mode Refactor the workflow instance layout to reuse card components and rename the height mode flag for clarity, and warn when config values are unexpected before falling back to fixed mode. Made-with: Cursor --------- Co-authored-by: Cursor <cursoragent@cursor.com> * fix(orchestrator-form-widgets): show spinner immediately on ActiveText retrigger (#2279) * fix: show spinner on ActiveText retrigger * fix(orchestrator-form-widgets): keep spinner until ActiveText eval completes * Merge upstream/main Co-authored-by: Cursor <cursoragent@cursor.com> * chore(changeset): mention clearOnRetrigger Document the new fetch:clearOnRetrigger behavior in the existing changeset for the ActiveText retrigger spinner update. Co-authored-by: Cursor <cursoragent@cursor.com> * refactor(orchestrator-form-widgets): dedupe clearOnRetrigger Extract shared clear-on-retrigger behavior into a reusable hook and reuse it across ActiveTextInput, ActiveDropdown, and ActiveMultiSelect. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(orchestrator-form-widgets): guard retrigger races Ignore stale fetch responses when retrigger values change and avoid reapplying cached data while a retriggered fetch is loading. Use layout effect for clearOnRetrigger to reduce UI flicker. Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Lokananda Prabhu <102503482+lokanandaprabhu@users.noreply.github.com> Co-authored-by: Cursor <cursoragent@cursor.com>
…t retrigger (redhat-developer#2279) * fix: show spinner on ActiveText retrigger * fix(orchestrator-form-widgets): keep spinner until ActiveText eval completes * Merge upstream/main Co-authored-by: Cursor <cursoragent@cursor.com> * chore(changeset): mention clearOnRetrigger Document the new fetch:clearOnRetrigger behavior in the existing changeset for the ActiveText retrigger spinner update. Co-authored-by: Cursor <cursoragent@cursor.com> * refactor(orchestrator-form-widgets): dedupe clearOnRetrigger Extract shared clear-on-retrigger behavior into a reusable hook and reuse it across ActiveTextInput, ActiveDropdown, and ActiveMultiSelect. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(orchestrator-form-widgets): guard retrigger races Ignore stale fetch responses when retrigger values change and avoid reapplying cached data while a retriggered fetch is loading. Use layout effect for clearOnRetrigger to reduce UI flicker. Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com>
* fix(orchestrator-form-widgets): show spinner immediately on ActiveText retrigger (#2279) * fix: show spinner on ActiveText retrigger * fix(orchestrator-form-widgets): keep spinner until ActiveText eval completes * Merge upstream/main Co-authored-by: Cursor <cursoragent@cursor.com> * chore(changeset): mention clearOnRetrigger Document the new fetch:clearOnRetrigger behavior in the existing changeset for the ActiveText retrigger spinner update. Co-authored-by: Cursor <cursoragent@cursor.com> * refactor(orchestrator-form-widgets): dedupe clearOnRetrigger Extract shared clear-on-retrigger behavior into a reusable hook and reuse it across ActiveTextInput, ActiveDropdown, and ActiveMultiSelect. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(orchestrator-form-widgets): guard retrigger races Ignore stale fetch responses when retrigger values change and avoid reapplying cached data while a retriggered fetch is loading. Use layout effect for clearOnRetrigger to reduce UI flicker. Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com> * feat(orchestrator): add card height mode config for workflow run page (#2386) * feat(orchestrator): add card height mode config Expose a workflow instance page option to switch between fixed card heights and content-based sizing, with a new hook and changeset entry. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(orchestrator): simplify layout and warn on invalid mode Refactor the workflow instance layout to reuse card components and rename the height mode flag for clarity, and warn when config values are unexpected before falling back to fixed mode. Made-with: Cursor --------- Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Lokananda Prabhu <102503482+lokanandaprabhu@users.noreply.github.com> Co-authored-by: Cursor <cursoragent@cursor.com>





Hey, I just made a Pull Request!
Fixes:
https://issues.redhat.com/browse/RHDHBUGS-2594
PR description:
Problem
ActiveText widgets with
fetch:retrigger(and nofetch:url) briefly show staleui:textduring the debounce window. The spinner only appears once evaluation starts, which is visible in production latency.Solution
fetch:clearOnRetriggeris enabled to avoid stale state during refetch.Changes
fetch:clearOnRetriggersupport forActiveTextInput,ActiveDropdown, andActiveMultiSelect.✔️ Checklist